草庐IT

Qt 360safe

全部标签

嵌入式linux——QT-ARM环境搭建

一、环境准备ubuntu—64位系统(版本视自己的情况而定。本人的是18.04)交叉编译工具链(网上有很多文章讲这个、不在赘述)tslib    tslib用于触摸屏坐标校准,根据tslib参数配置,可以改变触摸屏精度下载tslib库的源码:Tags·libts/tslib·GitHub版本:tslib-1.22.tar.bz2版本:tslib-1.22.tar.bz2        4.QT版本下载地址:Indexof/archive/qt/5.15/5.15.2/singleIndexof/archive/qt/5.15/5.15.2/single                选择一个版

C++ Qt开发:运用QThread多线程组件

Qt是一个跨平台C++图形界面开发库,利用Qt可以快速开发跨平台窗体应用程序,在Qt中我们可以通过拖拽的方式将不同组件放到指定的位置,实现图形化开发极大的方便了开发效率,本章将重点介绍如何运用QThread组件实现多线程功能。多线程技术在程序开发中尤为常用,Qt框架中提供了QThread库来实现多线程功能。当你需要使用QThread时,需包含QThread模块,以下是QThread类的一些主要成员函数和槽函数。成员函数/槽函数描述QThread(QObject*parent=nullptr)构造函数,创建一个QThread对象。~QThread()析构函数,释放QThread对象。voidst

Java:测试线程访问 "not thread-safe"方法

我在SwingJava应用程序中解决线程问题的策略是将方法分为三种类型:应该由GUI线程访问的方法。这些方法不应该阻塞并且可以调用swing方法。不是线程安全的。应由非GUI线程访问的方法。基本上这适用于所有(潜在的)阻塞操作,例如磁盘、数据库和网络访问。他们不应该调用swing方法。不是线程安全的。两者都可以访问的方法。这些方法必须是线程安全的(例如同步的)我认为这对于通常只有两个线程的GUI应用程序来说是一种有效的方法。解决问题确实有助于减少竞争条件的“表面积”。当然,需要注意的是,您绝不会不小心从错误的线程中调用方法。我的问题是关于测试的:是否有测试工具可以帮助我检查是否从正确的

linux下qt程序报qt.qpa.xcb: could not connect to display 错的解决方法

最近qt的项目需要在移植到linux上,在linux上运行时,报qt.qpa.xcb:couldnotconnecttodisplayqt.qpa.plugin:CouldnotloadtheQtplatformplugin"xcb"in""eventhoughitwasfound的错,具体错误信息如下图: 明明已经找到了qxcb这个库,但是却加载不上,插件位置也是正确的,就是加载不上。其实这个错误原因不是插件本身的问题,插件是没问题的,这个错误是qt无法连接到显示设备,问题出现在linux上,有个DISPLAY环境变量,这个环境变量需要正确设置。在linux上查看该环境变量是否正确,在终端上

QT-读取包含多个空字符的文件

我收到了一个文件,其中包含多个零符号/0一行。我的目标是加载文件并更换/0还有其他事情,但是我遇到了一些问题。QT停止读取文件达到点之后,出现空字符的位置。代码:QTextStreamfileContent;QFilefile(pendingFile);if(file.open(QIODevice::ReadOnly|QIODevice::Text)){fileContent.append(file.readAll());}文件:TextTextText/x00/x00/x00/x00/x00/x00/x00MoreText我目前正在使用QT5.9.1并使用VS2017开发。看答案使用qdat

【QT 5 +Linux下软件桌面快捷方式+qt生成软件创建桌面图标+学习他人文章+第二篇:编写桌面文件.desktop】

【QT5+Linux下软件桌面快捷方式+qt生成软件创建桌面图标+学习他人文章+第二篇:编写桌面文件.desktop】1、前言2、实验环境3、自我学习总结-本篇总结1、新手的疑问,做这件事目的2、了解.desktop3、三个关键目录以及文件编写1、目录:/opt/2、目录:/root/Desktop或者~/Desktop3、目录:/usr/share/applications/4、桌面文件变成图标4、参照文章-感谢5、实验过程1、进入目录2、放入图标文件3、编写default.desktop文件解释如下:1:[DesktopEntry]2:Type=Application3:Name=test

QT GUI编程常用控件学习

1GUI编程应该学什么 2QT常用模块结构QtCore:包含了核心的非GUI的功能。主要和时间、文件与文件夹、各种数据、流、URLs、mime类文件、进程与线程一起使用QtGui:包含了窗口系统、事件处理、2D图像、基本绘画、字体和文字类QtWidgets:包含了一些列创建桌面应用的UI元素3QT常用控件汇总一个程序界面上的各个独立的元素,如一块矩形区域;具备不同的功能,包括:用户点击,接收用户输入、展示内容;存放其他控件等;常用控件如下:按钮:QPushButton、QCommandLinkButton、QRadioButton、QCheckBox;输入控件:纯键盘输入:QLineEdit、

Qt5转Qt6笔记

背景        现在的主程序和扩展的dll库都是qt5环境下编译发布的。但是想以后用qt6。所以考虑是否能够在qt5中兼容qt6的动态链接库进行加载。于是...就开始吧开始2024-02-23安装好qt6后,在vs2019中需要新增qt6版本的安装路径。目录在:扩展->QTVSTools->QTVersions。    点击右边那个+好,选择qt6的qmake.exe所在路径就好。    接着在项目中设置要用到的qt版本即可                2.2024-02-26qt6的应用想用qt5编译发布的静态库。但是又不能影响现有的qt5的应用使用这些静态库。想到的办法是根据qt版本

java - Thread-Safe在java中是什么意思或者什么时候我们叫Thread-Safe?

我不理解这个概念。publicclassSomeName{publicstaticvoidmain(Stringargs[]){}}这是我的类(class)SomeName。现在这里的线程是什么。我们是否将类称为线程。当其他对象试图访问它的方法或成员时,我们是否将此类称为线程?当其他对象试图访问这个对象时,我们是否将这个类称为线程?当我们在java中将某些东西称为线程安全时,这意味着什么? 最佳答案 线程安全意味着避免一些问题。最常见也可能是最糟糕的称为线程锁。古老的类比是哲学家用餐的故事。他们非常有礼貌,不会在别人夹菜的时候伸出筷

Qt之TCP

Qt之TCPTCP概述传输控制协议(TCP,TransmissionControlProtocol)是一种面向连接的、可靠的、基于字节流的传输层通信协议。TCP主要特点TCP主要包括以下特点:(1)TCP是面向连接的传输层协议。应用程序在使用TCP协议之前,必须先建立TCP连接;在传输数据完毕后,必须释放已经建立的TCP连接;(2)TCP连接只能是点对点的;(3)TCP数据传输可靠。通过TCP传输的数据无差错、不丢失、不重复,并按序到达;(4)TCP提供全双工通信。通信双方在任何时候都可以发送数据,连接的两端设有发送缓存和接收缓存,用来临时存放双向通信的数据。具体步骤为发送数据—数据进入发送缓